using System;

using System.Diagnostics;
using System.Diagnostics.CodeAnalysis;

namespace CSharpDistilled.Diagnostics
{
    /// <summary>
    /// Specifies the processor architecture.
    /// </summary>
    [Serializable]
    public enum ProcessorArchitecture
    {
        /// <summary>
        /// x86 processor architecture.
        /// </summary>
        [SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Member")]
        x86 = 0,

        /// <summary>
        /// MIPS processor architecture.
        /// </summary>
        [SuppressMessage("Microsoft.Naming", "CA1705:LongAcronymsShouldBePascalCased", MessageId = "Member")]
        MIPS = 1,

        /// <summary>
        /// Alpha processor architecture.
        /// </summary>
        Alpha = 2,

        /// <summary>
        /// PowerPC processor architecture.
        /// </summary>
        PowerPC = 3,

        /// <summary>
        /// Intel Itanium processor architecture.
        /// </summary>
        Itanium = 6,

        /// <summary>
        /// x64 processor architecture.
        /// </summary>
        [SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Member")]
        x64 = 9
    }
}
